package cn.gorit.system.service;

import cn.gorit.common.lang.Result;
import cn.gorit.dto.system.TimeLineDto;
import cn.gorit.entity.system.TimeLine;
import cn.gorit.utils.Page;

import java.util.List;

/**
 * @version v1.0
 * @Classname TimeLineService
 * @Description TODO
 * @Author CodingGorit
 * @Created on 2021/4/10 18:08
 * @IDLE IntelliJ IDEA
 **/
public interface TimeLineService {

    Result<Object> addTimeLine(TimeLineDto dto);

    Result<Object> enableTimeLine(Integer id, Integer enable);

    // 记得增加 version 字段的校验
    Result<Object> updateTimeLine(TimeLine dto);

    Result<Page<TimeLine>> getTimeLineByPage(Page<TimeLine> page);

    // 分页查询获取总数
    Integer getTimeLineByPageCount(Page<TimeLine> page);

    // 前台获取 时间轴列表，默认加载 10条数据，超出部分继续查询
    Result<Page<TimeLineDto>> getTimeLineDtoList(Page<TimeLineDto> page);

    // 获取时间轴的数量总数
    Integer getTimeLineDtoCount(Page<TimeLineDto> page);
}
